package mapper;

import com.sqsf.javabean.User;

import java.util.List;

public interface UserMapper {
    List<User> selectAll();
    //在进行查询时 有时需要进行多条件查询
    //User拥有uid username phone3个查询属性
    //如果按照之前的方式
    //selectByUid(int uid);
    //selectByUsername(String username);
    //selectByPhone(String Phone);
    //selectByUidAndUsername(int uid,String username)
    //selectByUidAndPhone(int uid,String Phone)
    //selectByUidAndUsernameAndPhone(int uid,String username,String Phone)
    //原因是因为每个执行方法的sql固定书写 导致功能单一
    //那么使用动态sql可以书写一个方法 代替以上7个

    //因为查询的数据都属于User对象 所以以User对象的形式传入
    List<User> selectByUser(User user);

    //有时候需要进行单条件查询
    //多个参数 按照优先级判断
    List<User> selectByUserOne(User user);

    //日常修改
    //根据数据可能出现
    //updateUsernameByUid(int uid,String username);
    //updatePasswordByUid(int uid,String password);
    //updatePhoneByUid(int uid,String phone);
    //.....
    int updateByUser(User user);
    int trimTest();
    //根据数组批量删除数据
    int deleteByArray(int[] ids);
    //根据集合批量添加数据
    int insertList(List<User> users);
}

